


input_filepath="/Users/Shared/work/tmp/矿山行业语料/A408【智慧矿山解决方案】/煤炭科学研究总院矿山安全技术研究分院 齐庆新--冲击地压防治理论、技术及标准体系.ppt"


python3 -m document2llm.md.ppt2md.ppt_to_markdown -i ${input_filepath} -o output/ppt_converted.md



from document2llm.md.ppt2md.ppt_to_markdown import PPTToMarkdownProcessor

processor = PPTToMarkdownProcessor(input_filepath, "output/converted-ppt2.md")
result = processor.process()
print(result)



import shutil
import os
import tempfile
import random
import string

def random_string(length=10):
    """生成指定长度的随机字符串"""
    return ''.join(random.choices(string.ascii_letters + string.digits, k=length))

def process_file(file_path):
    """文件处理函数（示例）"""
    with open(file_path, 'r', encoding='utf-8') as f:
        print(f"文件内容: {f.read()}")

import os


def copy_to_tmp_file(input_filepath):
    # 获取原始文件的扩展名
    _, ext = os.path.splitext(input_filepath)
    #
    temp_dir =  os.getcwd()
    #
    # 创建临时文件
    temp_filename = random_string() + ext
    temp_filepath = os.path.join(temp_dir, temp_filename)
    #
    try:
        # 复制文件到临时位置
        shutil.copy2(input_filepath, temp_filepath)
        print(f"文件已复制到临时位置: {temp_filepath}")
        #
        # 处理临时文件
        #
        return temp_filepath
    except IOError as e:
        print(f"处理文件时发生错误: {e}")
    return None


def remove_file(temp_filepath):
    # 删除临时文件
    if os.path.exists(temp_filepath):
        os.remove(temp_filepath)
        print(f"临时文件已删除: {temp_filepath}")


input_filepath = '/Users/emery/Downloads/mac_backup/dataset_llm_text/大模      型    相    关.txt'

filep = copy_to_tmp_file(input_filepath)





import shutil
import os
import tempfile
import random
import string

def random_string(length=10):
    """生成指定长度的随机字符串"""
    return ''.join(random.choices(string.ascii_letters + string.digits, k=length))

def copy_to_tmp_file(input_filepath):
    # 获取原始文件的扩展名
    _, ext = os.path.splitext(input_filepath)

    # 创建临时目录
    with tempfile.TemporaryDirectory() as temp_dir:
        # 创建临时文件
        temp_filename = random_string() + ext
        temp_filepath = os.path.join(temp_dir, temp_filename)

        try:
            # 复制文件到临时位置
            shutil.copy2(input_filepath, temp_filepath)
            print(f"文件已复制到临时位置: {temp_filepath}")

            # 在这里可以添加对临时文件的处理逻辑

            return temp_filepath
        except IOError as e:
            print(f"处理文件时发生错误: {e}")
            return None

def main(input_filepath):
    temp_file = copy_to_tmp_file(input_filepath)
    if temp_file:
        print(f"临时文件创建成功: {temp_file}")
        # 在这里可以添加使用临时文件的代码

        # 使用完毕后，临时文件会自动删除
    else:
        print("创建临时文件失败")

if __name__ == "__main__":
    input_filepath = "/Users/Shared/work/tmp/矿山行业语料/A408【智慧矿山解决方案】/煤炭科学研究总院矿山安全技术研究分院 齐庆新--冲击地压防治理论、技术及标准体系.ppt"
    main(input_filepath)


def main(input_filepath):
    # 获取原始文件的扩展名
    _, ext = os.path.splitext(input_filepath)
    #
    # 创建临时文件
    with tempfile.TemporaryDirectory() as temp_dir:
        temp_filename = random_string() + ext
        temp_filepath = os.path.join(temp_dir, temp_filename)
    #
        try:
            # 复制文件到临时位置
            shutil.copy2(input_filepath, temp_filepath)
            print(f"文件已复制到临时位置: {temp_filepath}")

            # 处理临时文件
            process_file(temp_filepath)

        except IOError as e:
            print(f"处理文件时发生错误: {e}")

        finally:
            # 删除临时文件
            if os.path.exists(temp_filepath):
                os.remove(temp_filepath)
                print(f"临时文件已删除: {temp_filepath}")

if __name__ == "__main__":
    input_filepath = "/Users/Shared/work/tmp/矿山行业语料/A408【智慧矿山解决方案】/煤炭科学研究总院矿山安全技术研究分院 齐庆新--冲击地压防治理论、技术及标准体系.ppt"
    main(input_filepath)





from pptx import Presentation

def escape_path(path):
    return path.replace(" ", "\\ ").replace("(", "\\(").replace(")", "\\)").replace("[", "\\[").replace("]", "\\]")

input_filepath = "/Users/Shared/work/tmp/矿山行业语料/A408【智慧矿山解决方案】/煤炭科学研究总院矿山安全技术研究分院 齐庆新--冲击地压防治理论、技术及标准体系.ppt"
escaped_filepath = escape_path(input_filepath)
print(escaped_filepath)


prs = Presentation(escaped_filepath)





from pptx import Presentation


import shlex

input_filepath = "/Users/Shared/work/tmp/矿山行业语料/A408【智慧矿山解决方案】/煤炭科学研究总院矿山安全技术研究分院 齐庆新--冲击地压防治理论、技术及标准体系.ppt"
quoted_filepath = shlex.quote(input_filepath)

prs = Presentation(input_filepath)


from pathlib import Path

input_filepath = Path("/Users/Shared/work/tmp/矿山行业语料/A408【智慧矿山解决方案】/煤炭科学研究总院矿山安全技术研究分院 齐庆新--冲击地压防治理论、技术及标准体系.ppt")
prs = Presentation(input_filepath)


import os

input_filepath = os.path.join("/Users", "Shared", "work", "tmp", "矿山行业语料", "A408【智慧矿山解决方案】", "煤炭科学研究总院矿山安全技术研究分院 齐庆新--冲击地压防治理论、技术及标准体系.ppt")

input_filepath = r"/Users/Shared/work/tmp/矿山行业语料/A408【智慧矿山解决方案】/煤炭科学研究总院矿山安全技术研究分院 齐庆新--冲击地压防治理论、技术及标准体系.ppt"
prs = Presentation(input_filepath)



prs = Presentation(quoted_filepath)


from pptx import Presentation

input_filepath = r"/Users/Shared/work/tmp/矿山行业语料/A408【智慧矿山解决方案】/煤炭科学研究总院矿山安全技术研究分院 齐庆新--冲击地压防治理论、技术及标准体系.ppt"
prs = Presentation(input_filepath)

from pptx.enum.shapes import MSO_SHAPE_TYPE
from pptx.util import Pt
from ..file_processor import FileProcessor

class PPTToMarkdownProcessor(FileProcessor):
    def _process_file(self):
        prs = Presentation(self.input_filepath)
